home *** CD-ROM | disk | FTP | other *** search
/ Biodiversity of Illinois 2: Woodland Habitats / Biodiversity of Illinois 2 - Woodland Habitats.iso / mac / casts / PDFxtraBehaviors.cst / 00008_Script_PDF_GoToPage < prev    next >
Text File  |  2006-07-11  |  3KB  |  94 lines

  1. -- Go to Page
  2.  
  3. Property pEvent, pSprite, pPage, pAlertFlag
  4.  
  5. on doGo me
  6.   if (pPage<1) then exit
  7.   set err = PDF_GotoPage(sprite pSprite, pPage)
  8.   if PDF_status(sprite pSprite) then alert "PDF Behavior Error"&RETURN&PDF_error(sprite pSprite)
  9. end doGo
  10.  
  11. on mouseUp me
  12.   if (pEvent = #mouseUp) then doGo(me)
  13. end mouseUp
  14.  
  15. on mouseDown me
  16.   if (pEvent = #mouseDown) then doGo(me)
  17. end mouseDown
  18.  
  19. -- standard behavior stuff --
  20. on getPropertyDescriptionList me
  21.   set defaultValues = GetDefaultValues (me)
  22.   
  23.   set pdfSpriteList = getProp (defaultValues, #spriteList)
  24.   set defSprite     = getProp (defaultValues, #defaultSprite)
  25.   if (defSprite=0) then 
  26.     if the ticks - pAlertFlag > 10 then
  27.       alert "Please create a sprite of type PDF first."
  28.     end if
  29.     set pAlertFlag = the ticks -- The ticks when the user clicked "OK"
  30.     
  31.     exit
  32.   end if
  33.   set p_list = [:]
  34.   addprop p_list,#pEvent, [ #comment: "Event", #format:#symbol, #range:[#mouseUp, #mouseDown], #default:#mouseUp]
  35.   addprop p_list,#pSprite, [ #comment: "PDF Sprite is in channel:", #format:#symbol, #range:pdfSpriteList, #default:defSprite]
  36.   addprop p_list,#pPage, [ #comment: "Page number:", #format: #integer, #default: 1 ]
  37.   return p_list
  38. end
  39.  
  40. on getBehaviorDescription
  41.   tmp = "Instruct PDF sprite to go to a specific page in the current document." 
  42.   tmp = tmp & RETURN& "Available for Windows only, Acrobat or Reader." 
  43.   tmp = tmp &RETURN&RETURN& "--- PARAMETERS ---" &RETURN& " - Event: mouseUp or mouseDown."
  44.   tmp = tmp &RETURN& " - PDF Sprite is in channel: which channel contains the PDF Sprite."
  45.   tmp = tmp &RETURN& " - Page number: Number of the page to display"
  46.   tmp = tmp &RETURN&RETURN&  "Free to use and abuse. (c)1999-2005, Integration New Media, Inc." &RETURN& "Thanks to James Newton for his suggestions" 
  47.   return tmp  
  48. end
  49.  
  50. on getBehaviorTooltip
  51.   return "Instruct PDF sprite to go to a specific page" &RETURN& "in the current document." &RETURN& "Available for Windows only, Acrobat or Reader." 
  52. end
  53.  
  54. -- utils --
  55. on GetDefaultValues me
  56.   if the currentSpriteNum then
  57.     set spriteList = GetSpriteList (me #PDF)
  58.     if count (spriteList) then
  59.       set defaultSprite = getAt (spriteList, 1)
  60.     else
  61.       set defaultSprite = 0
  62.     end if
  63.     
  64.     return [#spriteList: spriteList, #defaultSprite: defaultSprite]
  65.     
  66.   else -- the currentSpriteNum = 0
  67.     -- Director is merely recompiling this script: return dummy values
  68.     return [#spriteList: [1], #defaultSprite: 1]
  69.   end if
  70. end 
  71.  
  72.  
  73. on GetSpriteList me, memberType
  74.   -- return list of sprites of type memberType in current frame
  75.   global version
  76.   if (char 1 of version = 6) then
  77.     set maxSprite = 120
  78.   else
  79.     set maxSprite = the lastChannel
  80.   end if
  81.   
  82.   set aList=[]
  83.   
  84.   repeat with i = 1 to maxSprite
  85.     set spriteMember = the member of sprite i
  86.     -- if (string(m) contains "member 0") then next repeat -- unnecessary
  87.     if (the type of spriteMember = memberType) then -- (JN) Line break
  88.       append (aList, i)
  89.     end if
  90.   end repeat
  91.   
  92.   return aList
  93. end GetSpriteList
  94.